Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Стандартні класи вікон та їх типи.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
АСУ

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Системне програмування

Частина тексту файла

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра АСУ Звіт до лабораторної роботи №4 з курсу « Системного програмування» на тему «Стандартні класи вікон та їх типи.» Тема – стандартні класи вікон та їх типи. Мета – зрозуміти поняття вікна в операційній системі Windows. ТЕОРЕТИЧНІ ПОЛОЖЕННЯ Все, що бачить користувач на екрані в системі WINDOWS є вікном. Вікно – це графічна оболонка, через яку програма може спілкуватися з користувачем. Якщо програмі не потрібно спілкуватись, то вона може і не створювати вікон. Вікно може володіти набором інших вікон, які називаються дочірніми. Кожне вікно має як певний набір параметрів, так і може відрізнятися певною специфікою спілкування з користувачем. Такі специфічні особливості називаються класом вікна. Існують стандартні класи, наприклад, вікно–регулювач, вікно-кнопка, вікно для вводу тексту, вікно-підказка та інші, які ви знайдете в лабораторній роботі. Кожний стандартний клас має унікальну назву, яка дійсна для всіх версій операційних систем WINDOWS. Вікно створюється за допомогою спеціальної функції CreateWindowExA. В параметрах цієї функції вказується наступна інформація: Вказівник на MDI – структуру (або 0); Хендл програми (отримується функцією GetModuleHandle); Хендл меню або дочірнього вікна (або 0); Хендл вікна-власника (або 0); Висота вікна; Ширина вікна; Координата Y; Координата X; Прапорці стилю вікна (див. далі); Вказівник на назву вікна (або 0); Вказівник на назву класу (див. далі); Прапорці властивостей вікна (див. далі). Керувати вікном можна за допомогою внутрішнього механізму WINDOWS, який базується на понятті повідомлення (в програмі позначено WM_...). Отже, вікно – це такий об’єкт WINDOWS, який крім текстово-графічної інформації може отримувати та надсилати спеціальні структури даних, які називаються повідомленнями. Структура кожного повідомлення стандартна і складається з наступних змінних: MsHWND dd 0 ; хендл вiкна, процедура якого отримала повiдомлення; msMESSAGE dd 0 ; код повiдомлення (кожна подiя має свiй); msWPARAM dd 0 ; додатковий параметр 1 (залежить вiд подiї); msLPARAM dd 0 ; додатковий параметр 2 (залежить вiд подiї); msTIME dd 0 ; час, коли було надiслано повiдомлення; ptX dd 0 ; координата X миші, коли надсилалося повiдомлення; ptY dd 0 ; координата Y миші, коли надсилалося повiдомлення. Повідомлення сигналізує про деяку подію в системі або у вікні, наприклад, вичерпався час таймера, користувач натиснув клавішу, відпустив клавішу, порухав мишу, клацнув кнопкою, та інші. Для того, щоб відправити повідомлення до довільного вікна (наприклад, щоб змінити його розмір) необхідно заповнити цю структуру даних та скористуватися функцією SendMessageA, а для прийому повідомлення від певного вікна необхідно вказати діапазон прийому, хендл вікна та адресу структури повідомлення і скористатися функцією GetMessageA. Коли повідомлення надійде, операційна система сама заповнить всі дані структури (див. програму). З кожним стандартним класом вікна зв’язана певна віконна стандартна процедура WndProc, яка малює вікно та обробляє всі повідомлення, що надходять у вікно. Програміст має можливість вставити у віконну процедуру свій фрагмент програми. Такі дії називаються субкласуванням. Саме ідеєю субкласування можна пояснити відокремлення процесів створення вікна, циклу прийому повідомлень та їх обробку у вигляді віконної процедури. Для цього ж кожна віконна процедура отримує параметри через стек за однаковим стандартом незалежно від класу та типу вікна. Цей стандарт не залежить навіть від версії WINDOWS: Hwnd // хендл вікна, яке отримало повідомлення; UMsg // код повідомлення; Wparam // перший параметр повідомлення; Lparam // другий параметр повідомлення; В лабораторній роботі запропонована програма, в якій створюється стандартне вікно класу Button – кнопка, та утворюється цикл прийому повідомлень від цього вікна. В циклі перевіряється подія н...
Антиботан аватар за замовчуванням

09.04.2015 00:04

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини